//package com.levy.contronller.javaWeb.findImageTest;
//
//import com.levy.utils.FileTool.TextFileUtils;
//import com.levy.utils.StringUtils1;
//import marvin.image.MarvinImage;
//import marvin.image.MarvinSegment;
//import marvin.io.MarvinImageIO;
//
//import java.awt.*;
//import java.awt.image.BufferedImage;
//import java.io.File;
//import java.io.IOException;
//import java.util.List;
//
//import static marvin.MarvinPluginCollection.findAllSubimages;
//
///**
// * marvin  包必须在项目路径下  否则会报错
// * 项目libarary 中需要加入 marvin_1.5.5.jar为依赖包
// * Created by levy on 2018/10/30.
// */
//public class FindImage {
//
//    private static List<MarvinSegment> allSubimages = null;
//
//    private static String userDir = System.getProperty("user.dir") + "/tmep/";
//
//    static {
//        File file = new File(userDir);
//        if (!file.exists()) {
//            file.mkdir();
//        }
//    }
//
//
//    public static String fillExistSmallImgToWhite(String srcImgPath, String destImgPath, double similarity) {
//
//        String tempPath = "";
//        //大图
//        MarvinImage backGroudImg = MarvinImageIO.loadImage(srcImgPath);
//
//        //需要查找的图
//        MarvinImage destImg = MarvinImageIO.loadImage(destImgPath);
//
//        //按照相似度进行查找
//        allSubimages = findAllSubimages(destImg, backGroudImg, similarity);
//        if (allSubimages != null && allSubimages.size() > 0) {
//            for (MarvinSegment m : allSubimages) {
//                //找到的小图位置的坐标点
//                System.out.println("Found:" + m.x1 + " " + m.y1 + " width:" + (m.x2 - m.x1) + " height:" + (m.y2 - m.y1));
//
//                fillRect(backGroudImg, m.x1, m.y1, m.x2 - m.x1, m.y2 - m.y1);
//            }
//            tempPath = userDir + System.currentTimeMillis() + ".png";
//
//            MarvinImageIO.saveImage(backGroudImg, tempPath);
//        }
//        return tempPath;
//    }
//
//    /**
//     * 填充为白色矩形
//     *
//     * @param image
//     * @param x
//     * @param y
//     * @param width
//     * @param height
//     */
//    private static void fillRect(MarvinImage image, int x, int y, int width, int height) {
//        x -= 1;
//        y -= 1;
//        width += 1;
//        height += 1;
//        image.fillRect(x, y, width, height, Color.WHITE);
//    }
//
//
//    private static String addFontOnImg(String tempPath, String replaceFont) {
//
//        String finalImgPath = "";
//        ModifyImage tt = new ModifyImage();
//        BufferedImage d = tt.loadImageLocal(tempPath);
//
//        int x = 0;
//        int y = 0;
//        for (MarvinSegment m : allSubimages) {
//            if ("佛".equals(replaceFont)) {
//                //针对对勾
//                x = m.x1;
//                y = m.y1 + 22;
//            } else {
//                //针对方框
//                x = m.x1 - 4;
//                y = m.y1 + 13;
//            }
//            tt.modifyImage(d, replaceFont, x, y);
//        }
//        finalImgPath = userDir + System.currentTimeMillis() + ".png";
//        tt.writeImageLocal(finalImgPath, d);
//        return finalImgPath;
//    }
//
//    public static void main(String[] args) throws IOException {
//        long l = System.currentTimeMillis();
//        String srcImg = "G:\\河北永洋特钢集团有限公司\\5.png";
//        String finalimgPath = "G:\\河北永洋特钢集团有限公司\\final_" + l + ".png";
//
//        String path_1 = FindImage.fillExistSmallImgToWhite(srcImg, "G:\\duigou.png", 0.65);
//        System.out.println("--对勾擦除完成--" + path_1);
//        if (StringUtils1.isNotBlank(path_1)) {
//            String addFontImg_1 = addFontOnImg(path_1, "佛");
//            System.out.println("--汉字添加完成1--" + path_1);
//            if (StringUtils1.isNotBlank(addFontImg_1)) {
//                String path_2 = FindImage.fillExistSmallImgToWhite(addFontImg_1, "G:\\fangkuang.png", 0.9);
//                System.out.println("--方框擦除完成--" + path_2);
//                String addFontImg_2 = addFontOnImg(path_2, "鬼");
//                System.out.println("--汉字添加完成2--" + addFontImg_2);
//                if (StringUtils1.isNotBlank(addFontImg_2)) {
//                    //拷贝到最终地址
//                    TextFileUtils.copyFile(addFontImg_2, finalimgPath);
//                    System.out.println("--复制文件完成--" + finalimgPath);
//                }
//            }
//        }
//
//        System.out.println("success--" + finalimgPath);
//        System.out.println("--耗时--" + (System.currentTimeMillis() - l) / 1000 + "s");
//
//
//    }
//
//
//}
